Reflection and Problem Solving